package com.hghivln.erpwarehouse.system.service;

import com.hghivln.erpwarehouse.system.common.lang.DataGridlView;
import com.hghivln.erpwarehouse.system.entity.Menu;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author hghivln
 * @since 2021-06-19
 */
public interface MenuService extends IService<Menu> {


    List<Menu> queryAllMenuForList();


    List<Menu> queryAllMenuById(Integer id);

    /**
     * 查询最大的排序码
     */
    Integer queryMenuMaxOrderNum();

    /**
     * 添加菜单和权限
     */
    Menu addMenu(Menu menu);

    /**
     * 修改菜单和权限
     */
    Menu updateMenu(Menu menu);
    Menu updateMenuBtn(Menu menu);
    /**
     * 返回当前菜单的子节点的数量
     */
    DataGridlView getMenuChildrenCountById(Integer id);

    /**
     * 查询菜单和权限
     */
    DataGridlView queryAllMenu(Menu menu);

    /**
     * 根据用户id查询菜单数据的集合
     */
    List<Menu> queryMenuForListByUserId(Integer id);

    /**
     * 根据用户ID查询权限编码集合
     */
    List<String> queryPermissionCodeByUserId(Integer id);



}
